home *** CD-ROM | disk | FTP | other *** search
/ ETO Development Tools 1 / ETO Development Tools 1.iso / Essentials / MacApp Documentation / MacApp AppleLink Messages / MacApp.Tech$ Apr 89 / T0026-Re Overriding NEW-Apr89 < prev    next >
Encoding:
Text File  |  1989-04-18  |  1.6 KB  |  38 lines  |  [TEXT/GEOL]

  1. Item    3273168                         18-April-89        11:26
  2.  
  3. From:   ROSENSTEIN1                     Rosenstein, Larry
  4.  
  5. To:     D2987                           Command Central, R Andrews, PRT
  6.  
  7. cc:     MACAPP.TECH$                    MACAPP Tech
  8.  
  9. Sub:    re Overriding NEW
  10.  
  11. MacApp calls the method TApplication.OpenNew to open a new document.  The
  12. method takes a command number as parameter to tell you which menu command was
  13. used to initiate the process.
  14.  
  15. For opening a new document from the Finder, the command number will be the
  16. constant cNew.  You can override OpenNew and check for this value to see if the
  17. user double clicked the application.
  18.  
  19. I prefer using this mechanism to overriding HandleFinderRequest, because it
  20. doesn't require that you look at the gFileCount global.  In addition, if you
  21. have to override OpenNew to put up your configuration dialog, you might as well
  22. do all the work in one place.
  23.  
  24. Finally, Keith's answer assumes that the configuration information you get from
  25. the dialog is kept in global variables.  If the information is to be used in
  26. creating the document itself, you may want to put up the dialog in your
  27. TMyApplication.DoMakeDocument method.  Then you can pass the information to
  28. your IMyDocument method.
  29.  
  30. In that case, if the user cancels, you should not create the document object,
  31. and call Failure(noErr, 0).  The Failure call will unwind the stack back to the
  32. main loop, but since the error code (the first parameter to Failure) is noErr,
  33. no alert will be displayed.  MacApp should recover and continue processing
  34. events.
  35.  
  36. Larry
  37.  
  38.